package com.iris.live.services.data.repositories;

import com.iris.live.services.data.models.报价付款详细Model;
import com.iris.live.services.data.models.报价付款详细ModelPK;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;

public interface 报价付款详细Repository extends JpaRepository<报价付款详细Model, 报价付款详细ModelPK>, JpaSpecificationExecutor<报价付款详细Model>{
    @Modifying
    @Query("UPDATE 报价付款详细Model u SET u.实付金额 = ?1, u.财务备注 = ?2,u.更新账号=?4 WHERE u.付款事由 = '总计' AND u.报价编号 = ?3")
    int updateNewCarSaleMoney(String realPay,String finance,int quoteNo,String account);

    @Modifying
    @Query("UPDATE 报价付款详细Model u SET u.实付金额 = u.应付金额, u.财务备注 = ?1,u.更新账号=?3 WHERE u.付款事由 = '总计' AND u.报价编号 = ?2")
    int updateSaleMoney(String finance,int quoteNo,String account);

    @Modifying
    @Query("UPDATE 报价付款详细Model u SET u.实付金额 = ?1 ,u.更新账号=?3 WHERE u.付款事由 = '交强险代缴' AND u.报价编号 = ?2")
    int updateNewCarInsJMoney(String realPay, int quoteNo, String account);

    @Modifying
    @Query("UPDATE 报价付款详细Model u SET u.实付金额 = ?1 ,u.更新账号=?3 WHERE u.付款事由 = '商业险代缴' AND u.报价编号 = ?2")
    int updateNewCarInsSMoney(String realPay, int quoteNo, String account);

    @Query("SELECT u FROM  报价付款详细Model u    WHERE u.付款事由 = '交强险代缴' AND u.报价编号 = ?1")
    报价付款详细Model getInsJqx(int quoteNo);

    @Query("SELECT u FROM  报价付款详细Model u   WHERE u.付款事由 = '商业险代缴' AND u.报价编号 = ?1")
    报价付款详细Model getInsSyx(int quoteNo);

    @Query("SELECT u FROM  报价付款详细Model u   WHERE u.付款事由 = '总计' AND u.报价编号 = ?1")
    报价付款详细Model getTotal(int quoteNo);
    @Modifying
    @Query("UPDATE 报价付款详细Model u SET u.实付金额 = ?1 ,u.更新账号=?2 WHERE u.付款事由 = ?3 AND u.报价编号 = ?4 ")
    int updateNewCarSaleMoneys(String realPay,String permit, String account,int quoteNo);
    @Query("SELECT u FROM  报价付款详细Model u   WHERE u.付款事由 =?2 AND u.报价编号 = ?1")
    报价付款详细Model getTotals(int quoteNo,String shi);

    @Modifying
    @Query("update 报价付款详细Model u set u.实付金额=?1,u.应付金额=?2 where u.报价编号=?3")
    int updateMoneyByQuoteNo(String pay, String realPay, int quoteNo);

    @Modifying
    @Query("UPDATE 报价付款详细Model u SET u.应付金额 = ?1  WHERE u.付款事由 = '总计' AND u.报价编号 = ?2")
    int updateTotal(String totalNow, int quoteNo);

    @Query("SELECT SUM(应付金额) FROM 报价付款详细Model u  WHERE  u.报价编号 = ?1")
    String getTotalNow(int quoteNo);

    @Modifying
    @Query("UPDATE 报价付款详细Model u SET u.实付金额 = ?1  WHERE u.付款事由 = '总计' AND u.报价编号 = ?2")
    int updateTotal2(String totalNow, int quoteNo);
}
